package com.cwx.mychat.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.cwx.mychat.entity.dto.RegisterDto;
import com.cwx.mychat.entity.po.UserInfo;
import com.cwx.mychat.exception.BusinessException;
import com.cwx.mychat.utils.PageUtils;
import com.cwx.mychat.entity.vo.UserInfoVO;
import com.cwx.mychat.utils.R;
import org.springframework.web.multipart.MultipartFile;

import java.util.Map;

public interface UserInfoService extends IService<UserInfo> {

    /**
     * 注册
     *
     * @return
     */
    void regist(RegisterDto registerDto) throws BusinessException;

    /**
     * 上传
     *
     * @param file
     * @return
     */
    R upload(MultipartFile file);

    /**
     * 搜索好友
     *
     * @param searchInfo
     * @return
     */
    R searchFriends(String searchInfo);

    /**
     * 获取可能认识的好友
     *
     * @return
     */
    R getPossibleContacts();

    /**
     * 根据ids获取用户信息
     *
     * @param ids
     * @return
     */
    R getUserInfoByIds(String ids);

    /**
     * 根据数量查询用户信息
     *
     * @param count   数量
     * @param ids     用户ids
     * @param groupId 群组id
     * @return
     */
    R getUserInfoByCount(int count, String ids, String groupId);

    /**
     * 获取单个用户信息
     * @param contactId
     * @param userId
     * @return
     */
    R getUserAllInfoById(String contactId, String userId);


}
